package com.bonc.modules.rpt.service;

import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.bonc.modules.rpt.param.FixParam;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.List;

/**
 * @author jinlong
 * @date 2021/6/28
 */
public interface FixService<T> {


    /**
     * 获取最大数据日期
     * @return 最大数据日期(yyyy-MM-dd)
     */
    default String getMaxDate(){
        return DateUtil.yesterday().toDateStr();
    }

    /**
     * 获取报表分页数据
     * @param fixParam 固定报表参数
     * @return
     */
    Page<T> queryPage(FixParam fixParam);

    /**
     * 获取报表数据
     * @param fixParam 固定报表参数
     * @return
     */
    default List<T> queryData(FixParam fixParam){
        return  new ArrayList<>();
    }


    default Long uploadFile(MultipartFile file,FixParam fixParam){
        return 0L;
    }

    default void  downloadFile(FixParam fixParam, HttpServletResponse response){

    }

    default void deleteFile(FixParam fixParam){

    }

}
